<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 实际代码书写中,有时候我们需要制造错误,需要把错误抛出.
        
        // 1.制造错误
        const e1 = new Error('这是制造的第一个错误');
        // 所有的错误都要有两个属性
        console.log(e1.name ,e1.message);
        console.log(e1);

        // 2.抛出错误,throw 后面专门放错误对象
        throw e1;
        console.log('抛出错误后,后面的代码将不再执行!');


        // 如果我们觉得某段代码有可能会出现错误,可以进行try...catch

        // 捕获错误
        try{
            document.querySelector('asdf').style.color = 'red';
        }catch(err){
            console.warn('注意:您使用的选择器在页面中找不到对应的标签!')
        }
        // 捕获错误后,后面的代码可以继续执行.
        console.log('模拟1w行代码');
    </script>
</body>
</html>